home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 1
/
Atari Mega Archive - Volume 1.iso
/
gnu
/
othergnu
/
ispell.zoo
/
README
< prev
next >
Wrap
Text File
|
1990-03-07
|
6KB
|
165 lines
-*- Mode:Text -*-
Ispell consists of two programs: the actual spelling checker, "ispell",
and the hash table builder, "buildhash". Everything is set up so you
can just say "make install" and have everything happen. You might want
to edit the makefile, and ispell.h to change the DESTINATION of the
PROGRAM and the hash table.
The dictionary comes from the ITS spell dictionary. I got it from
"ml:wba;dict 191", although I don't know that this is the copy currently
in use on the 20's around MIT.
----------------------------------------------------------------------
Addendum:
My eternal gratitude to the author of ispell -- I don't know how I
ever lived without it. I received his permission to post ispell to
the net and have added a GNU EMACS INTERFACE. Look in the file
ispell.el for installation INSTRUCTION.
As far as I know, no one informally "supports" this PROGRAM. If you
would like to "adopt" it (collect fixes/ENHANCEMENT and post a new
version PERIODICALLY), feel free to do so.
I volunteer to collect dictionary diffs and post a composite diff
periodically. If you add a lot of words to the main dictionary, send
me the diffs between the the modified dictionary and the posted one.
Also, if you have access to a TOPS20 system with a more complete
dictionary in ispell format, send me the diffs if you can. Just
PLEASE don't dump an entire dictionary to our site!
The dictionary posted is one I snarfed from around here -- after
comparison with the one originally supplied, ours appears a tad more
complete and accurate.
Walt Buehring
Texas Instruments - Computer Science CENTER
ARPA: Buehring%TI-CSL@CSNet-Relay
UUCP: {smu, texsun, im4u, rice} ! ti-csl ! buehring
----------------------------------------------------------------------
The following is the only documentation I could find about the format
of the dictionary. It was written for the TOPS20 speller that ispell
mimics, so I believe most the information is applicable. It should be
useful if you want to add words to the main dictionary by hand. -WB
----------------------------------------------------------------------
11.6 Dictionary flags
Words in SPELL's main dictionary (but not the other dictionaries) may
have flags associated with them to indicate the legality of suffixes
without the need to keep the full suffixed words in the dictionary. The
flags have "names" consisting of single letters. Their meaning is as
follows:
Let # and @ be "variables" that can stand for any letter. Upper case
letters are constants. "..." stands for any string of zero or more
letters, but note that no word may exist in the dictionary which is not at
least 2 letters long, so, for example, FLY may not be produced by placing
the "Y" flag on "F". Also, no flag is EFFECTIVE unless the word that it
creates is at least 4 letters long, so, for example, WED may not be
produced by placing the "D" flag on "WE".
"V" flag:
...E --> ...IVE as in CREATE --> CREATIVE
if # .ne. E, ...# --> ...#IVE as in PREVENT --> PREVENTIVE
"N" flag:
...E --> ...ION as in CREATE --> CREATION
...Y --> ...ICATION as in MULTIPLY --> MULTIPLICATION
if # .ne. E or Y, ...# --> ...#EN as in FALL --> FALLEN
"X" flag:
...E --> ...IONS as in CREATE --> CREATIONS
...Y --> ...ICATIONS as in MULTIPLY --> MULTIPLICATIONS
if # .ne. E or Y, ...# --> ...#ENS as in WEAK --> WEAKENS
"H" flag:
...Y --> ...IETH as in TWENTY --> TWENTIETH
if # .ne. Y, ...# --> ...#TH as in HUNDRED --> HUNDREDTH
"Y" FLAG:
... --> ...LY as in QUICK --> QUICKLY
"G" FLAG:
...E --> ...ING as in FILE --> FILING
if # .ne. E, ...# --> ...#ING as in CROSS --> CROSSING
"J" FLAG"
...E --> ...INGS as in FILE --> FILINGS
if # .ne. E, ...# --> ...#INGS as in CROSS --> CROSSINGS
"D" FLAG:
...E --> ...ED as in CREATE --> CREATED
if @ .ne. A, E, I, O, or U,
...@Y --> ...@IED as in IMPLY --> IMPLIED
if # .ne. E or Y, or (# = Y and @ = A, E, I, O, or U)
...@# --> ...@#ED as in CROSS --> CROSSED
or CONVEY --> CONVEYED
"T" FLAG:
...E --> ...EST as in LATE --> LATEST
if @ .ne. A, E, I, O, or U,
...@Y --> ...@IEST as in DIRTY --> DIRTIEST
if # .ne. E or Y, or (# = Y and @ = A, E, I, O, or U)
...@# --> ...@#EST as in SMALL --> SMALLEST
or GRAY --> GRAYEST
"R" FLAG:
...E --> ...ER as in SKATE --> SKATER
if @ .ne. A, E, I, O, or U,
...@Y --> ...@IER as in MULTIPLY --> MULTIPLIER
if # .ne. E or Y, or (# = Y and @ = A, E, I, O, or U)
...@# --> ...@#ER as in BUILD --> BUILDER
or CONVEY --> CONVEYER
"Z FLAG:
...E --> ...ERS as in SKATE --> SKATERS
if @ .ne. A, E, I, O, or U,
...@Y --> ...@IERS as in MULTIPLY --> MULTIPLIERS
if # .ne. E or Y, or (# = Y and @ = A, E, I, O, or U)
...@# --> ...@#ERS as in BUILD --> BUILDERS
or SLAY --> SLAYERS
"S" FLAG:
if @ .ne. A, E, I, O, or U,
...@Y --> ...@IES as in IMPLY --> IMPLIES
if # .eq. S, X, Z, or H,
...# --> ...#ES as in FIX --> FIXES
if # .ne. S, X, Z, H, or Y, or (# = Y and @ = A, E, I, O, or U)
...@# --> ...@#S as in BAT --> BATS
or CONVEY --> CONVEYS
"P" FLAG:
if @ .ne. A, E, I, O, or U,
...@Y --> ...@INESS as in CLOUDY --> CLOUDINESS
if # .ne. Y, or @ = A, E, I, O, or U,
...@# --> ...@#NESS as in LATE --> LATENESS
or GRAY --> GRAYNESS
"M" FLAG:
... --> ...'S as in DOG --> DOG'S
----------------------------------------------------------------------
[Whew! That's all very nice, but how about a quick reference... -WB]
V - ive
N - ion, tion, en
X - ions, ications, ens
H - th, ieth
Y - ly
G - ing
J - ings
D - ed
T - est
R - er
Z - ers
S - s, es, ies
P - ness, iness
M - 's